package world.edges;

import be.kuleuven.cs.som.annotate.Basic;

/**
 * Class representing a wall on a border
 * 
 * @author Frederic Mes, Wim Marynissen
 * @version 1.0
 */
public class Wall extends BorderElement{
	/**
	 * Construct a wall.
	 * 
     * @param 	isSlippery
     * 			Indicates if the wall is made of slippery material
	 * @post	The boolean, indicating if the wall is slippery, is initialised.
	 * 			| new.isSlippery() == isSlippery
     */
    public Wall(boolean isSlippery) {
            this.isSlippery = isSlippery;
    }

    /**
	 * Returns if the wall is slippery.
	 */
    @Basic
    public boolean isSlippery() {
		return isSlippery;
	}
    
    /**
	 * Variable indicating if the wall is slippery.
	 */
	private boolean isSlippery;

    
	/**
	 * Check if the wall is an obstacle.
	 * @return	Always true, a wall is always an obstacle
	 * 			| result == true
	 */
	@Override
	public boolean isObstacle() {
		return true;
	}
	
	/** 
	 * Number used to determine which border element to keep when borders are shared.
	 */
	@Override
	public int getImportanceInSharing() {
		return 100;
	}
}
